A CHR-Based Solver for Weak Memory Behaviors

نویسندگان

  • Allan Blanchard
  • Nikolai Kosmatov
  • Frédéric Loulergue
چکیده

With the wide expansion of multiprocessor architectures, the analysis and reasoning for programs under weak memory models has become an important concern. This work presents an original constraint solver for detecting program behaviors respecting a particular memory model. It is implemented in Prolog using CHR (Constraint Handling Rules). The CHR formalism provides a convenient generic solution for specifying memory models, that benefits from the existing optimized implementations of CHR and can be easily extended to new models. We briefly present the solver design, illustrate the encoding of memory model constraints in CHR and discuss the benefits and limitations of the proposal.

منابع مشابه

Complexity of the CHR Rational Tree Equation Solver

Constraint Handling Rules (CHR) is a concurrent, committed-choice, rule-based language. One of the first CHR programs is the classic constraint solver for syntactic equality of rational trees that performs unification [7, 4, 14]. The worst-case time (and space) complexity of this short and elegant solver so far was an open problem [8] and assumed to be polynomial. In this paper we show that und...

متن کامل

SMCHR: Satisfiability modulo constraint handling rules

Constraint Handling Rules (CHRs) are a high-level rule-based programming language for specification and implementation of constraint solvers. CHR manipulates a global store representing a flat conjunction of constraints. By default, CHR does not support goals with a more complex propositional structure including disjunction, negation, etc., or CHR relies on the host system to provide such featu...

متن کامل

Complexity of a CHR Solver for Existentially Quantified Conjunctions of Equations over Trees

Constraint Handling Rules (CHR) is a concurrent, committed-choice, rule-based language. One of the first CHR programs is the classic constraint solver for syntactic equality of rational trees that performs unification. We first prove its exponential complexity in time and space for non-flat equations and deduce from this proof a quadratic complexity for flat equations. We then present an extend...

متن کامل

Satisfiability Modulo Constraint Handling Rules (Extended Abstract)

Satisfiability Modulo Constraint Handling Rules (SMCHR) is the integration of the Constraint Handling Rules (CHRs) solver programming language into a Satisfiability Modulo Theories (SMT) solver framework. Constraint solvers are implemented in CHR as a set of high-level rules that specify the simplification (rewriting) and constraint propagation behavior. The traditional CHR execution algorithm ...

متن کامل

Using Program Analysis for Integration and Optimization of Rule-based Constraint Solvers

ABSTRACT. One lesson learned from practical applications is that constraints are often heterogeneous. Solving such constraints requires a collaboration of constraint solvers. In this paper, we introduce a methodology for the tight integration of CHR constraint solver programs into one such program. CHR is a high-level rule-based language for writing constraint solvers and reasoning systems. A c...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

متن کامل
عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2016